查看原文
其他

扒了一下西安一码通的接口,这特么不崩才怪呢~

点击上方蓝色字体,选择“标星公众号

优质文章,第一时间送达


关注公众号后台回复paymall获取实战项目资料视频

西安一码通的二次崩溃,几乎每个技术群里都在吐槽和猜测。知乎也有开贴提问,地址是:

https://www.zhihu.com/question/509914161

技术圈都对这件事情感兴趣,让我们一起来看看!

前段时间,有一篇陕西电信的文章,大力肯定了开发团队,但略显得外行,该报道被众多网友吐槽:

目前已经下架,可以看看大概内容:

健康码连续挂了两次真的有点业余了,不过确实也没有low到服务器生成图片进行下发这么蠢。知乎@卢兴民做了简单剖析,我们来看看。

看一波西安健康码的接口数据:

真正的二维码数据是 /person/app/refreshQRCode这个接口

看下这个接口返回,设计上也没有太大的问题。

主要问题集中在所有的js/css/img这些静态资源全都从从一个出口进行提供,没上CDN。

粗略估算了一下,js/css/img数据总共约500kB,按照从某个群里得到的数据,暂且认为是准的,健康码的请求量峰值达到了3.3w qps。

那按照这个量估计 33000 x 500 x 8 bps ≈ 125Gbps  这个出口量级很难用单机房承载,峰值一来,出口网卡打满,直接gg。

到写这个回答时,西安健康码还是没有将静态资源上CDN,之后看看访问量再起飞的时候,能不能扛得住吧。

当然,目前所有的看法也都只是猜测,具体什么原因还得所在的开发团队挖掘,你的看法是什么呢,欢迎评论区讨论!

往期推荐

你见过最垃圾的代码长什么样?(来长长见识)

推荐一个 Java 接口快速开发框架

频频曝出程序员被抓,我们该如何避免面向监狱编程?

新来的CTO强制规定所有接口都用 POST请求。。。

重磅:某国产API管理工具发布,称完全可替代Postman,阿里腾讯都在用!

Nginx从安装到高可用,一篇搞定!


您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存